// 页面加载的时候 从缓存中获取购物车数据 渲染到页面中 checked必须为true
// 点击结算按钮 先判断是否有token 没有 跳转到授权页面 获取token
import { myrequest } from "../../request/index.js"
import { getSetting, chooseAddress, openSetting, showModal, showToast } from "../../utils/asyncWx.js"
Page({
  data: {
    address: {},
    cart: [],
    totalPrice: 0,
    totalNum: 0
  },
  onShow() {
    // 获取缓存中的收货地址信息
    const address = wx.getStorageSync("address")
    // 获取缓存中的购物车数据
    const cart = wx.getStorageSync("cart") || []
    // 这里数据需要先过滤一遍，筛掉checked不为true的项
    let checkedCart = cart.filter(v => v.checked)
    this.setData({
      address
    })
    this.setCart(checkedCart)
  },

  // 设置购物车状态，重新计算底部工具栏的数据
  setCart(cart) {
    // 重新计算价格和数量
    let totalPrice = 0
    let totalNum = 0
    cart.forEach(v => {
      totalPrice += v.num * v.goods_price
      totalNum += v.num
    })
    this.setData({
      cart,
      totalPrice,
      totalNum
    })
  },

  // 点击支付按钮的功能
  async handleOrderPay() {
    // 判断是否有token
    const token = wx.getStorageSync("token")
    if (!token) {
      wx.navigateTo({
        url: '/pages/auth/index'
      })
      return
    }
    // // 创建订单 -- 准备 请求头参数
    // const header = { Authorization: token }
    // // 请求体参数
    // const order_price = this.data.totalPrice
    // const consignee_addr = this.data.address_all
    // const cart = this.data.cart
    // let goods = []
    // cart.forEach(v => {
    //   goods.push({
    //     goods_id: v.goods_id,
    //     goods_number: v.num,
    //     goods_price: v.goods_price
    //   })
    // })
    // const orderParams = {
    //   goods_price,
    //   consignee_addr,
    //   goods
    // }
    // // 准备发送请求 创建订单 获取订单编号
    // const res = await myrequest({
    //   url: "/my/orders/create",
    //   method: "POST",
    //   data: orderParams,
    //   header
    // })

    // 商品支付成功，删除已支付的商品信息
    // let newCart = wx.getStorage("cart")
    // newCart = newCart.filter(v => !v.checked)
    // wx.setStorageSync("cart", newCart);
  }
})